This invention relates to an information processing system which is structured by coupling a plurality of information processing units to one another.
Recently, the role of information processing systems has become important. Accordingly, interruption of such a system can result in severe losses.
Under the circumstances, there is a strong demand in present-day society for an information processing system which has a high reliability and a high resistivity to fault. In other words, twenty-four hour non-interruptable fault tolerant system are required.
In order to improve reliability in the information processing system, a wide variety of systems have been proposed which have a plurality of information processing units coupled to one another and which may be called multiprocessor systems. In such multiprocessor systems, when one of the information processing units is rendered faulty during processing of a data signal, another one of the information processing units takes over the processing and continues to execute the processing in place of the faulty information processing unit. With this structure, the information processing system can reliably continue processing without interruption.
More specifically, a conventional information processing unit has a control processing unit, a memory unit, and a communication processing unit all of which are coupled to one another through a bus line. The communication processing unit of each information processing unit is connected to the communication processing unit of the other information processing units through a communication path. In this event, the control processing unit of one information processing unit accesses the memory unit in response to a control program and a control data signal read out of the memory unit to renew contents of the memory unit. When the contents of the memory unit are renewed in one information processing unit, a communication message and a renewal data signal are stored in the memory unit under control of the control processing unit. Thereafter, a transfer request is sent from the control processing unit to the communication processing unit. Supplied with the transfer request, the communication control unit reads the communication message and the renewal data signal out of the memory unit to transfer them from the one imformation processing unit to the other information processing unit through the communication path.
In the other information processing unit, the communication message and the renewal data signal are stored in the memory unit of the other information processing unit under control of the communication processing unit. Subsequently, the communication processing unit informs the control processing unit of the completion of communication. The control processing unit renews contents of the memory unit of the other information processing unit by the use of the communication message and the renewal data signal so that the contents of the memory units are coincident with each other. The control processing unit produces an acknowledgement message stored in the memory unit and supplies a transfer request of the acknowledgement message to the communication processing unit of the other information processing unit. Responsive to the transfer request, the communication processing unit transfers the acknowledgement message to the communication processing unit of the one information processing unit.
In the one information processing unit, the communication processing unit makes the memory unit store the acknowledgement message and informs the control processing unit of reception of the acknowledgement message sent from the other information processing unit. Thus, the control processing unit of the one information processing unit starts a following processing after reception of the acknowledgement message from the other information processing unit.
It is to be noted that each memory unit of the one and the other information processing units is loaded with the control data signals necessary for the one and the other information processing units. Accordingly, when the one of the information processing units is faulty, the other information processing unit can take over the processing of the one information processing unit.
With this structure, each control processing unit must control communication so as to transfer the communication message and the control data signal to another information processing unit in accordance with the transfer request, as mentioned above. At any rate, an input/output instruction should be carried out so as to carry out the transfer operation in each information processing unit. Therefore, the overhead becomes large in each control processing unit, which brings about a degradation of throughput.
In another conventional multiprocessor system, a couple of information processing units are coupled to each other through a common or external memory connected to both common memory controllers of one and the other information processing units. Each of the information processing units comprises a control processing unit, a memory unit, and an external memory control unit.
In this case, the memory unit has a primary memory area for storing primary table information used by each control processing unit and an additional memory area for storing additional table information sent from the other information processing unit.
In the one information processing unit, the control processing unit transfers the primary table information to the external memory through the external memory control unit when the primary table information is renewed. More particularly, the control processing unit issues an operation command or indication to the external memory control unit on transferring the primary table information to the external memory. Responsive to the operation indication, the external memory control unit accesses the memory unit to read the primary table information out of the primary memory area and to thereafter transfer the primary table information to the external memory. Similar operations are carried out in the other information processing unit.
When one of the information processing units is faulty, the other information processing unit can take over processing carried out in the one information processing unit, similar to the above-mentioned conventional information processing system.
However, each control processing unit should execute the operation command in each information processing unit so as to transfer the table information to the external memory. This results in an increase of the program size. In addition, connection of the external memory brings about a reduction of throughput in the information processing system and raises the cost of the information processing system. Moreover, often execution of an operation command undesirably destroys address information indicated by the operation command.